今天我們再繼續接下去看我們的程式碼!!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Configuration;
using System.Data.SqlClient;
namespace databaseconnect1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string sqlstr = "select * from TEST1";
SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["鐵 人賽示範資料庫ConnectionString"].ConnectionString);
conn.Open();
SqlCommand cmd = new SqlCommand(sqlstr, conn);
SqlDataReader dr = cmd.ExecuteReader();
GridView1.DataSource = dr;
GridView1.DataBind();
cmd.Cancel();
conn.Close();
}
}
}
接下來我們看到這一行程式,我們發現這裡我們創建了一個叫做cmd的物件他是屬於sqlCcommand類別的SqlCommand cmd = new SqlCommand(sqlstr, conn);
,那其中的sqlstr
以及conn
這兩個參數便是我們前面建立的一個通訊通道的名稱以及自己先寫好的sql指令的字串,那這裡的用途便是告訴sqlCommand的物件我們要執行的指令字串是甚麼,以及是要透過哪個通道去執行!!
那接下來我們看到SqlDataReader dr = cmd.ExecuteReader();
在這裡我們可以簡單地把SqlDataReader類別產生的物件dr看成是一個資料處理後放置的容器,至於他放置的內容,相信各位聰明的讀者都已經知道了吧!!看到右邊的程是碼cmd.ExecuteReader();
這裡就是將上一行的SqlCommand
的cmd
執行,透過.ExecuteReader();
的這個方法去執行!!最後將結果存放至dr
裡!
那接下來的兩行就十分簡單明瞭了!!GridView1.DataSource = dr;
這一行的用意是指定GridView1
的資料來源為dr
,GridView1.DataBind();
而這一行則是將資料繫結至GridView1
,為什麼要有這一行是因為我們需要讓資料表以表格方式呈現,我們需要讓資料表與原先是空白的表格(GridView1
)做繫結,讓資料表格正確的呈現!!
最後的cmd.Cancel();
是將指令取消,而conn.Close();
則是將通道整個關閉,結束與資料庫的連結!